import axios,{AxiosResponse} from "axios"

// 创建实例
const  service = axios.create({
    baseURL:import.meta.env.VITE_API_BASE_URL,
    timeout:10000,
})

// 请求拦截
service.interceptors.request.use(
config =>{
    // 请求头中添加token 的传递
    const token = ""
    if(token){
        config.headers.Authorization = `Bearer ${token}`
    }
    return config
}
)


// 响应拦截

service.interceptors.response.use(
    (response:AxiosResponse) =>{
        //status 是http 状态码
        // data 是后端响应返回的数据 ,规范格式为{code,data,message}
        const {status,data:respinseData}  = response
        
        if(status >=200 && status <300){
            // 从响应返回的数据中结构使用的值
            const { code ,data,message} = respinseData
            if(code ==200){
                return data

            }
            return Promise.reject(new Error(message))
        }
    }
        
)

export default service